The present invention relates to a communication proxy technology for receiving a request message (an access request) from a client such as a Web browser and providing the response data such as Web data in place of an server such as a Web server.
In “Web proxy servers” issued in 1998 by Pearson Education (i.e. a translation of Ari Luotonen, “Web Proxy Servers” (Web Infrastructure Series), Prentice Hall PTR; 1st edition, December 1997), a communication proxy technology for speeding up the access to the Web data of the Web browser is described.
According to this technology, a proxy server is provided to receive the request message from the Web browser in place of the Web server, so that this proxy server relays the request message which is received from the Web browser to the Web server and relays the Web data (the response data) which is transmitted from this Web server in response to the request message to the Web browser.
At this time, the relayed Web data is cached in the proxy server. Then, if the Web browser requests the access to the Web data that is cached, the proxy server transmits this cached Web data to the Web browser as the response data in place of relaying the request message to the Web server.
In this way, it is possible to speed up the access to the Web data from the Web browser, and to prevent the server from being congested by access concentration.
Additionally, in 1999, a communication proxy technology capable of providing a value added service (an additional service) was suggested by iCAP (Internet Content Adaptation Protocol) forum.
According to this technology, a dedicated application server which is called an iCAP server is provided and this application server is connected to the proxy server by a communication protocol which is called iCAP. Further, this technology makes the proxy server transfer the request message and the response data to the iCAP server.
When a content of the request message and/or a content of the response data which was transmitted from the proxy server are modified, is edited or converted into other data by the iCAP server, it is possible to provide the value added service other than high-speed of the access to the Web data.
By the way, according to the communication proxy technology using the above described iCAP, the protocol (iCAP) is only used for the communication between the proxy server and the iCAP server and it is taking nothing into consideration with respect to a control policy such as transfer conditions. The conditions are, for example, when and to which server the request or the response message to be transmitted.
For example, setting a table in which the control policy is registered for each URL (Uniform Resource Locator) in the proxy server in advance, it is also possible to make the proxy server process the request message based on a content of this table.
However, in this case, the above described table needs to be set up ateach of many proxy servers which are located on a network, so that it is difficult. Particularly, in the case that necessity arises to change the control policy, the table that was set in each proxy server should be updated on each time.
Additionally, the control policy is applied for each URL, so that it is difficult to perform the delicate control such that different value added services are applied to each data item which is dynamically generated by a CGI (Common Gateway Interface). Further, it is necessary to look up the control policy to be applied from the table using the URL as a key. Since the number of the URL is enormous, it takes a long time till the process is started in accordance with the control policy.
In the international publication Number WO 00/46679, a technology is disclosed such that a control policy for controlling the internal processing of the proxy server is included in the response data and the internal processing in the proxy server is carried out based on the control policy. However, this technology relates to the processing control in the proxy server and it does not relate to the control of the data transfer between the proxy server and the application server.